package com.cn.lp.jpa.cq;

import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.domain.Specification;

/**
 * 语句
 * @author wqr
 * Created by on 2019/8/7
 */
public interface CQuery<TFrom> {

    Specification<TFrom> toSpecification();

    /**
     * 获取标识
     * @return
     */
    String getSign();

    /**
     * 获取标识
     * @param pageable
     * @return
     */
    String getSign(Pageable pageable);

    /**
     * 获取压缩后标识
     * @return
     */
    String getShortSign();

    /**
     * 获取压缩后标识
     * @return
     */
    String getShortSign(Pageable pageable);

}
